home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 10 / AACD 10.iso / AACD / Programming / AmigaTalk / Intuition / Window.st < prev   
Text File  |  2000-05-07  |  6KB  |  210 lines

  1. "--------------------------------------------------"
  2. " Window Class implements control of Amiga Windows."
  3. "--------------------------------------------------"
  4.  
  5. Class Window :Glyph
  6.   leftEdge   topEdge width  height detailPen   blockPen    flags
  7.   iDCMPFlags title   mouseX mouseY screenTitle windowTitle
  8.  
  9.   reqCount ptrWidth  ptrHeight xOffset   yOffset bitMap 
  10.   minWidth minHeight maxWidth  maxHeight chkMark
  11. !
  12. [
  13.    close
  14.       <primitive 181 0 windowTitle>.
  15.       windowTitle <- nil
  16. |
  17.    setPointer: spritePtr size: sizePt offset: offPt ! w h x y !
  18.       w <- sizePt x.
  19.       h <- sizePt y.
  20.       x <- offPt  x.
  21.       y <- offPt  y.
  22.       <primitive 181 8 spritePtr h w x y windowTitle>
  23. |
  24.    addGadget: gadgetName type: gadgetType
  25.       "gadgetType: 0 = Boolean, 1 = String & 2 = Porportional:"
  26.       <primitive 181 9 gadgetName gadgetType windowTitle>
  27. |
  28.    setFirstGadget: newGadget
  29.       <primitive 181 3 12 newGadget windowTitle>
  30. |
  31.    refreshGadgets
  32.       <primitive 181 4 'RefreshGadgets' windowTitle>
  33. |
  34.    removeGadget: gadgetName type: gadgetType
  35.       <primitive 181 10 gadgetName gadgetType windowTitle>
  36. |
  37.    reportMouse: boolvalue
  38.       <primitive 181 11 boolvalue windowTitle>
  39. |
  40.    getMouseCoords
  41.       mouseX <- <primitive 181 2 8 windowTitle>.
  42.       mouseY <- <primitive 181 2 9 windowTitle>.
  43.       ^ mouseX @ mouseY
  44. |
  45.    printIText: iTextName at: aPoint
  46.       <primitive 181 14 iTextName (aPoint x) (aPoint y) windowTitle>
  47. |
  48.    reOpenWindow
  49.       <primitive 181 15 windowTitle>      
  50. |
  51.    handleIntuition
  52.       ^ <primitive 181 16 windowTitle>
  53. |
  54.    addDMRequest: dMRequesterName
  55.       <primitive 181 5 'AddDMRequest' dMRequesterName windowTitle>
  56. |
  57.    removeDMRequest
  58.       <primitive 181 4 'RemoveDMRequest' windowTitle>
  59. |
  60.    windowToBack
  61.       <primitive 181 4 'WindowToBack' windowTitle>
  62. |
  63.    windowToFront
  64.       <primitive 181 4 'WindowToFront' windowTitle>
  65. |
  66.    showRequester: requesterName
  67.       <primitive 181 5 'ShowRequester' requesterName windowTitle>
  68. |
  69.    addMenuStrip: menuName
  70.       <primitive 181 5 'AddMenuStrip' menuName windowTitle>
  71. |
  72.    removeMenuStrip
  73.       <primitive 181 4 'RemoveMenuStrip' windowTitle>
  74. |
  75.    moveWindow: deltaPt
  76.       <primitive 181 6 'MoveWindow' (deltaPt x) (deltaPt y) windowTitle>
  77. |
  78.    infoReq: msg title: t
  79.       <primitive 181 13 msg t 'OKAY'>
  80. |
  81.    yesNoReq: msg title: t
  82.       ^ <primitive 181 13 msg t 'YES|NO'>
  83. |
  84.    getUserChoice: msg title: t choices: bstr
  85.       ^ <primitive 181 13 msg t bstr>
  86. |
  87.    changeWindowSize: deltaPt
  88.       <primitive 181 6 'SetWindowSize' (deltaPt x) (deltaPt y) windowTitle>
  89. |
  90.    getOrigin
  91.       leftEdge <- <primitive 181 2 0 windowTitle>.
  92.       topEdge  <- <primitive 181 2 1 windowTitle>.
  93.       ^ leftEdge @ topEdge
  94. |
  95.    getWindowSize
  96.       width  <- <primitive 181 2 2 windowTitle>.
  97.       height <- <primitive 181 2 3 windowTitle>.
  98.       ^ width @ height
  99. |
  100.    getWindowPens
  101.       detailPen <- <primitive 181 2 4 windowTitle>.
  102.       blockPen  <- <primitive 181 2 5 windowTitle>.
  103.       ^ detailPen @ blockPen
  104. |
  105.    getFlags
  106.       ^ flags <- <primitive 181 2 6 windowTitle>
  107. |
  108.    getIDCMPFlags
  109.       ^ iDCMPFlags <- <primitive 181 2 7 windowTitle>
  110. |
  111.    beginRefresh
  112.       <primitive 181 4 'BeginRefresh' windowTitle>
  113. |
  114.    endRefresh
  115.       <primitive 181 4 'EndRefresh' windowTitle>
  116. |     
  117.    remakeDisplay
  118.       <primitive 181 4 'RemakeDisplay' windowTitle>
  119. |     
  120.    rethinkDisplay
  121.       <primitive 181 4 'RethinkDisplay' windowTitle>
  122. |
  123.    setWindowOrigin: newPoint ! x y !
  124.       x <- newPoint x.
  125.       y <- newPoint y.
  126.       <primitive 181 3 0 x windowTitle>.
  127.       <primitive 181 3 1 y windowTitle>.
  128.       leftEdge <- x.
  129.       topEdge  <- y
  130. |
  131.    setWindowSize: sizePoint ! w h !
  132.       w <- sizePoint x.
  133.       h <- sizePoint y.
  134.       <primitive 181 3 2 w windowTitle>.
  135.       <primitive 181 3 3 h windowTitle>.
  136.       width  <- w.
  137.       height <- h
  138. |
  139.    setWindowPens: newPensPoint ! fp bp !
  140.       fp <- newPensPoint x.
  141.       bp <- newPensPoint y.
  142.       <primitive 181 3 4 fp windowTitle>.
  143.       <primitive 181 3 5 bp windowTitle>.
  144.       detailPen <- fp.
  145.       blockPen  <- bp
  146. |
  147.    setFlags: newFlags
  148.       <primitive 181 3 6 newFlags windowTitle>.
  149.       flags <- newFlags
  150. |
  151.    setIDCMPFlags: newIDCMP
  152.       <primitive 181 3 7 newIDCMP windowTitle>.
  153.       iDCMPFlags <- newIDCMP
  154. |
  155.    setMinSize: newMinPoint ! minw minh !
  156.       minw <- newMinPoint x.
  157.       minh <- newMinPoint y.
  158.       <primitive 181 3 8 minw windowTitle>.
  159.       <primitive 181 3 9 minh windowTitle>.
  160.       minWidth  <- minw.
  161.       minHeight <- minh      
  162. |
  163.    setMaxSize: newMaxPoint ! maxw maxh !
  164.       maxw <- newMaxPoint x.
  165.       maxh <- newMaxPoint y.
  166.       <primitive 181 3 10 maxw windowTitle>.
  167.       <primitive 181 3 11 maxh windowTitle>.
  168.       maxWidth  <- maxw.
  169.       maxHeight <- maxh
  170. |
  171.    getReqCount
  172.       ^ reqCount <- <primitive 181 2 11 windowTitle>
  173. |
  174.    getPointerSize
  175.       ptrWidth  <- <primitive 181 2 12 windowTitle>.
  176.       ptrHeight <- <primitive 181 2 13 windowTitle>.
  177.       ^ ptrWidth @ ptrHeight
  178. |
  179.    setCheckMark: newCheckMark
  180.       <primitive 181 3 13 newCheckMark windowTitle>.
  181.       chkMark <- newCheckMark
  182. |
  183.    getWindowOffset
  184.       xOffset <- <primitive 181 2 14 windowTitle>.
  185.       yOffset <- <primitive 181 2 15 windowTitle>.
  186.       ^ xOffset @ yOffset
  187. |
  188.    setBitMap: newBitMap
  189.       <primitive 181 3 14 newBitMap windowTitle>.
  190.       bitMap <- newBitMap
  191. |
  192.    getTitle
  193.       ^ title <- <primitive 181 2 10 windowTitle>
  194. |      
  195.    changeTitle: newTitle             "This might be broken!!"
  196.       <primitive 181 12 windowTitle newTitle>.
  197.       windowTitle <- newTitle
  198. |
  199.    getScreenTitle
  200.       ^ screenTitle <- <primitive 181 2 16 windowTitle>
  201. |
  202.    new: newWindowTitle
  203.       windowTitle <- newWindowTitle.
  204.       ^ self
  205. |
  206.    openOnScreen: screenName
  207.       <primitive 181 1 screenName windowTitle>
  208. ]
  209.